package com.lainiao.request;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * 请求转发
 *     request.getRequestDispatcher("fc").forward(request,response);
 *     可以让请求从服务端跳转到 客户端（或其他的Servlet）
 * 特点：
 *     1. 服务端行为
 *     2. 地址栏不发生改变
 *     3. 从始至终 只有一个请求
 *     4. request数据共享
 *     5. 请求转发的 绝对地址，只能定位到站点后（即，仅限于项目内部 进行请求转发）
 */
@WebServlet("/f")
public class request03_Forward extends HttpServlet {
    @Override
    protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // 接收客户端的请求参数
        String uname = request.getParameter("uname");
        System.out.println("Forward uname：" + uname);

        /**
         * 请求转发
         *     只能跳转一个
         */
        // 跳转到 其他Servlet：forward
        request.getRequestDispatcher("fc").forward(request,response);
        // 跳转到 jsp
//        request.getRequestDispatcher("index.jsp").forward(request,response);
        // 跳转到 html
//        request.getRequestDispatcher("forward.html").forward(request,response);

    }
}
